﻿using Dapper;
using Microsoft.Data.Sqlite;


public class Db
{
    public static SqliteConnection GetConnection()
    {
        var connectionString = new SqliteConnectionStringBuilder
        {
            DataSource = ":memory:",
            Mode = SqliteOpenMode.Memory,
            Cache = SqliteCacheMode.Private
        }.ToString();
        var connection = new SqliteConnection(connectionString);
        connection.Open();
        connection.Execute(@"
CREATE TABLE IF NOT EXISTS AbnormalReport (
    id INTEGER PRIMARY KEY AUTOINCREMENT,       -- 异常单ID（主键）
    title TEXT NOT NULL,                        -- 异常标题
    product_no TEXT NOT NULL,                   -- 产品编号
    description TEXT,                           -- 异常描述
    reporter TEXT NOT NULL,                     -- 报告人
    occur_time DATETIME NOT NULL,               -- 异常发生时间
    location TEXT,                              -- 发生地点/设备/模块
    type TEXT,                                  -- 异常类型（如：系统故障、人为操作、网络中断等）
    level TEXT CHECK(level IN ('Low', 'Medium', 'High', 'Critical')) NOT NULL DEFAULT 'Medium', -- 紧急程度
    status TEXT CHECK(status IN ('Open', 'Processing', 'Closed', 'Pending')) DEFAULT 'Open', -- 处理状态
    assignee TEXT,                              -- 分配处理人
    resolve_time DATETIME,                      -- 解决时间
    ai_solution TEXT ,                          -- AI生成的解决方案
    solution TEXT                               -- 解决方案或备注
);
INSERT INTO AbnormalReport (title,product_no, description, reporter, occur_time, location, type, level, status, assignee, resolve_time, solution) VALUES
('装配线停机','AXA-200', 'A1线因气压不足导致自动停机', '张强', '2025-04-01 08:45:00', '装配车间A1线', '设备故障', 'High', 'Closed', '李工', '2025-04-01 10:30:00', '更换气泵并恢复供气'),
('物料错投','AXA-200', 'B3线操作员误投型号为XYZ-2的物料', '王芳', '2025-04-01 11:20:00', '配料区B3线', '人为失误', 'Medium', 'Closed', '陈主管', '2025-04-01 12:00:00', '隔离批次并重新投料'),
('焊接不良','AXA-200', 'C2线第5号焊接点存在虚焊现象', '赵磊', '2025-04-02 09:15:00', '焊接车间C2线', '品质问题', 'High', 'Processing', '刘质检', NULL, NULL),
('贴片偏移','AXA-200', 'SMT线贴片位置整体偏移0.3mm', '周敏', '2025-04-02 14:10:00', '电子组装线SMT', '设备偏差', 'Critical', 'Open', NULL, NULL, NULL),
('设备报警','AXA-200', '注塑机M7出现温度超限报警', '吴勇', '2025-04-03 10:50:00', '注塑车间M7机', '设备故障', 'Medium', 'Closed', '维修部黄工', '2025-04-03 11:30:00', '清理冷却系统并复位'),
('模具卡料','AXA-200', '冲压线M2模具卡住未排出产品', '郑浩', '2025-04-03 16:00:00', '冲压车间M2线', '设备故障', 'High', 'Processing', '模具组林工', NULL, NULL),
('测试失败','AXA-200', '成品测试F3批次电流超标', '徐婷', '2025-04-04 09:40:00', '质检中心F3批次', '品质问题', 'Medium', 'Closed', '品控杨工', '2025-04-04 11:00:00', '返修处理并重新测试'),
('传感器失灵','AXA-200', '流水线E5光电传感器无响应', '胡军', '2025-04-04 13:30:00', '自动化线E5', '设备故障', 'Medium', 'Processing', '自控组唐工', NULL, NULL),
('电源中断','AXA-200', '总电闸跳闸导致整线停工10分钟', '高伟', '2025-04-05 08:10:00', '配电房主线路', '电力故障', 'Critical', 'Open', NULL, NULL, NULL),
('程序错误','AXA-200', '机器人R3执行路径出错撞模', '许倩', '2025-04-05 15:20:00', '机器人作业区R3', '软件故障', 'High', 'Processing', '自动化王工', NULL, NULL),
('包装破损','AXA-200', '发货前发现G7批次外箱压损', '宋梅', '2025-04-06 10:00:00', '仓储物流区', '运输问题', 'Low', 'Closed', '物流张经理', '2025-04-06 10:40:00', '更换外箱并加固打包'),
('漏打螺丝','AXA-200', '终检发现X1产品缺少固定螺丝', '冯涛', '2025-04-06 14:30:00', '终检区X1产品', '人为失误', 'Medium', 'Closed', '班组长罗工', '2025-04-06 15:00:00', '补装螺丝并加强检查'),
('液压压力低','AXA-200', '液压机H9输出压力不达标', '邓杰', '2025-04-07 09:20:00', '液压站H9', '设备故障', 'High', 'Processing', '设备组孙工', NULL, NULL),
('电机过热','AXA-200', '传送带T3电机温度过高报警', '秦雪', '2025-04-07 16:15:00', '传送带T3', '设备故障', 'Medium', 'Closed', '维修部王工', '2025-04-07 17:00:00', '清洗风扇并降温'),
('参数设置错误','AXA-200', '注塑时间设置错误导致成型不良', '韩峰', '2025-04-08 11:10:00', '注塑车间控制台', '人为失误', 'Medium', 'Processing', '工艺组赵工', NULL, NULL),
('PCB烧板','AXA-200', '电路板U5区域烧焦冒烟', '白露', '2025-04-08 14:40:00', '电子组装线', '硬件故障', 'Critical', 'Open', NULL, NULL, NULL),
('缺料报警','AXA-200', '贴片机持续报警提示元件空料', '毛伟', '2025-04-09 09:05:00', 'SMT贴片机', '物料短缺', 'Low', 'Closed', '物料员李姐', '2025-04-09 09:30:00', '补充物料并恢复生产'),
('涂层脱落','AXA-200', '喷漆线产品表面涂层脱落', '吕娜', '2025-04-09 13:20:00', '喷涂车间', '工艺问题', 'Medium', 'Closed', '涂装主管', '2025-04-09 14:00:00', '调整烘烤时间并重喷'),
('标签打印错误','AXA-200', '产品序列号与订单不符', '曾丽', '2025-04-10 10:15:00', '包装区打印机', '人为失误', 'Low', 'Closed', '包装组长', '2025-04-10 10:45:00', '重新打印并核对信息'),
('静电击穿','AXA-200', '多个IC在装配过程中损坏', '潘强', '2025-04-10 15:30:00', '装配台ESD区域', '环境问题', 'High', 'Processing', 'ESD工程师', NULL, NULL),
('设备停机故障', 'P123456', 'CNC机床在运行过程中突然停止，导致加工中断', '张三', '2025-04-01 09:15:00', '车间A-01', '系统故障', 'High', 'Closed', '李四', '2025-04-01 11:30:00', '重启设备并检查电源模块'),
('物料错装', 'P789012', '操作员误将型号为X-200的零件装入X-100产品中', '王五', '2025-04-02 10:45:00', '装配线B-03', '人为操作', 'Medium', 'Processing', '赵六', NULL, '已隔离错误批次并重新培训员工'),
('网络通信中断', 'P345678', 'MES系统与PLC之间通信中断，无法获取实时数据', '陈七', '2025-04-03 14:20:00', '控制室C-02', '网络中断', 'Critical', 'Open', NULL, NULL, '正在排查交换机连接问题'),
('模具损坏', 'P901234', '注塑模具在使用过程中出现裂纹，影响产品质量', '周八', '2025-04-04 08:30:00', '车间D-05', '设备老化', 'High', 'Closed', '吴九', '2025-04-04 16:00:00', '更换新模具并安排定期检查'),
('传感器失灵', 'P567890', '温度传感器读数异常，可能导致过热报警', '郑十', '2025-04-05 13:10:00', '生产线E-07', '硬件故障', 'Medium', 'Pending', '王五', NULL, '待更换传感器并校准'),
('程序版本不一致', 'P112233', '控制系统软件版本不匹配，导致功能异常', '刘一', '2025-04-06 11:00:00', '调试区F-01', '系统故障', 'Low', 'Open', NULL, NULL, '等待升级最新固件'),
('气压不足导致停机', 'P223344', '供气系统压力下降，导致多台设备自动停机', '孙二', '2025-04-07 09:50:00', '车间G-04', '外部因素', 'High', 'Processing', '李四', NULL, '检查空压机并恢复供气'),
('电机过载报警', 'P334455', '传送带电机负载过高，触发保护机制', '钱三', '2025-04-08 15:25:00', '生产线H-06', '硬件故障', 'Medium', 'Closed', '赵六', '2025-04-08 17:00:00', '清理传动部件并重置过载保护器'),
('操作界面无响应', 'P445566', 'HMI触摸屏卡死，无法进行参数设置', '黄四', '2025-04-09 10:10:00', '控制柜I-03', '软件故障', 'Low', 'Open', NULL, NULL, '重启HMI系统或更新驱动'),
('冷却水流量异常', 'P556677', '冷却系统流量偏低，可能引发设备过热', '徐五', '2025-04-10 16:40:00', '车间J-08', '系统故障', 'Medium', 'Processing', '陈七', NULL, '检查水泵及管路是否堵塞'),
('装配线停机','AXA-200', 'A1线因气压不足导致自动停机', '张强', '2025-04-01 08:45:00', '装配车间A1线', '设备故障', 'High', 'Closed', '李工', '2025-04-01 10:30:00', '更换气泵并恢复供气'),
('原料短缺','BXB-310', '原料仓库B缺少关键零件', '王丽', '2025-01-15 09:20:00', '原料仓库B', '物料短缺', 'Medium', 'Processing', '赵工', NULL, NULL),
('系统异常报警','CXC-120', 'MES系统数据同步失败', '李明', '2025-02-10 14:05:00', '信息中心', '系统故障', 'Critical', 'Open', NULL, NULL, NULL),
('焊接机器人故障','DXD-450', '焊接机器人动作异常，无法启动', '陈伟', '2025-03-22 11:30:00', '焊接区D', '设备故障', 'High', 'Closed', '孙工', '2025-03-22 13:00:00', '更换控制模块'),
('温控异常','EXE-520', 'E2区温控系统温度超标', '赵敏', '2025-05-05 07:50:00', 'E2温控区', '环境异常', 'Medium', 'Pending', NULL, NULL, NULL),
('包装线卡箱','FXF-900', 'F1包装线出现卡箱现象', '刘洋', '2025-05-18 16:10:00', '包装车间F1线', '设备故障', 'Low', 'Closed', '王工', '2025-05-18 17:00:00', '清理异物并调整导轨'),
('电源异常','GXA-110', 'G1区电源电压不稳', '李娜', '2025-01-08 10:15:00', 'G1配电房', '电气故障', 'High', 'Processing', '赵工', NULL, NULL),
('网络中断','HXB-220', '生产线H网络突然中断', '王刚', '2025-02-19 13:40:00', 'H线控制室', '网络中断', 'Critical', 'Open', NULL, NULL, NULL),
('传感器失灵','IXC-330', 'I2区温湿度传感器无响应', '陈静', '2025-03-11 09:55:00', 'I2检测区', '设备故障', 'Medium', 'Closed', '李工', '2025-03-11 11:00:00', '更换传感器'),
('操作失误','JXD-440', 'J1线工人误操作导致停线', '赵磊', '2025-04-23 15:25:00', 'J1线', '人为操作', 'Low', 'Closed', '王工', '2025-04-23 16:00:00', '培训操作规范'),
('温度报警','KXE-550', 'K区温度超限报警', '孙悦', '2025-05-12 08:30:00', 'K区', '环境异常', 'Medium', 'Pending', NULL, NULL, NULL),
('设备维护','LXF-660', 'L3线定期维护未完成', '刘强', '2025-01-27 17:10:00', 'L3线', '设备维护', 'Low', 'Processing', '李工', NULL, NULL),
('软件升级失败','MXA-770', 'MES系统升级失败', '王敏', '2025-02-05 10:50:00', '信息中心', '系统故障', 'High', 'Open', NULL, NULL, NULL),
('气压不足','NXB-880', 'N1区气压低于警戒值', '张伟', '2025-03-14 07:40:00', 'N1气站', '设备故障', 'Medium', 'Closed', '赵工', '2025-03-14 09:00:00', '调整气压阀'),
('原料混入异物','OXF-990', 'O2仓原料混入异物', '李婷', '2025-04-09 11:20:00', 'O2仓', '物料异常', 'High', 'Processing', '孙工', NULL, NULL),
('机器人通讯异常','PXA-101', 'P1机器人与主控失联', '王磊', '2025-05-21 13:15:00', 'P1机器人区', '系统故障', 'Critical', 'Open', NULL, NULL, NULL),
('包装缺料','QXB-202', 'Q3包装线缺少包装袋', '陈刚', '2025-01-19 15:35:00', 'Q3包装线', '物料短缺', 'Medium', 'Closed', '李工', '2025-01-19 16:00:00', '补充物料'),
('电机过热','RXC-303', 'R2线主电机温度过高', '赵云', '2025-02-28 09:10:00', 'R2线', '设备故障', 'High', 'Processing', '王工', NULL, NULL),
('扫码枪故障','SXD-404', 'S1扫码枪无法识别条码', '刘洋', '2025-03-07 14:45:00', 'S1工位', '设备故障', 'Low', 'Closed', '孙工', '2025-03-07 15:30:00', '更换扫码枪'),
('数据丢失','TXE-505', 'T区生产数据丢失', '李娜', '2025-04-15 10:05:00', 'T区', '系统故障', 'Critical', 'Open', NULL, NULL, NULL),
('气泵损坏','UXF-606', 'U1气泵损坏导致停机', '王强', '2025-05-03 08:20:00', 'U1气泵房', '设备故障', 'High', 'Closed', '赵工', '2025-05-03 09:30:00', '更换气泵'),
('主控板故障','VXA-707', 'V1主控板无响应', '李雷', '2025-01-12 09:10:00', 'V1主控区', '设备故障', 'High', 'Processing', '王工', NULL, NULL),
('气体泄漏','WXB-818', 'W2气体管道泄漏报警', '王芳', '2025-02-16 11:25:00', 'W2管道区', '环境异常', 'Critical', 'Open', NULL, NULL, NULL),
('工位灯损坏','XXC-929', 'X3工位指示灯不亮', '赵亮', '2025-03-09 13:40:00', 'X3工位', '设备故障', 'Low', 'Closed', '李工', '2025-03-09 14:10:00', '更换指示灯'),
('条码打印异常','YXD-101', 'Y1条码打印机无法正常打印', '刘敏', '2025-04-18 15:55:00', 'Y1工位', '设备故障', 'Medium', 'Processing', '孙工', NULL, NULL),
('温湿度超标','ZXE-212', 'Z2区温湿度超标', '陈刚', '2025-05-22 08:05:00', 'Z2检测区', '环境异常', 'Medium', 'Pending', NULL, NULL, NULL),
('PLC通讯中断','AXA-303', 'A2线PLC与上位机通讯中断', '王伟', '2025-01-23 10:30:00', 'A2线', '系统故障', 'Critical', 'Open', NULL, NULL, NULL),
('电缆老化','BXB-414', 'B3区电缆老化需更换', '李娜', '2025-02-12 16:20:00', 'B3配电区', '电气故障', 'High', 'Processing', '赵工', NULL, NULL),
('气缸卡滞','CXC-525', 'C1气缸动作不畅', '张强', '2025-03-25 09:50:00', 'C1工位', '设备故障', 'Medium', 'Closed', '王工', '2025-03-25 10:30:00', '清理并加注润滑油'),
('工人误操作','DXD-636', 'D2工人误操作导致报警', '王磊', '2025-04-11 14:15:00', 'D2线', '人为操作', 'Low', 'Closed', '李工', '2025-04-11 14:40:00', '加强培训'),
('UPS故障','EXE-747', 'E1区UPS掉电', '赵敏', '2025-05-09 07:30:00', 'E1配电房', '电气故障', 'High', 'Processing', '孙工', NULL, NULL),
('原料超期','FXF-858', 'F2仓原料超期未清理', '刘洋', '2025-01-29 16:00:00', 'F2仓', '物料异常', 'Medium', 'Pending', NULL, NULL, NULL),
('扫码异常','GXA-969', 'G3扫码枪频繁丢码', '李娜', '2025-02-21 13:10:00', 'G3工位', '设备故障', 'Low', 'Closed', '赵工', '2025-02-21 13:40:00', '更换扫码枪'),
('主轴过载','HXB-101', 'H2主轴过载报警', '王刚', '2025-03-16 08:20:00', 'H2主轴区', '设备故障', 'High', 'Processing', '李工', NULL, NULL),
('MES数据异常','IXC-212', 'I1 MES数据异常', '陈静', '2025-04-27 17:30:00', 'I1信息中心', '系统故障', 'Critical', 'Open', NULL, NULL, NULL),
('气源压力低','JXD-323', 'J2气源压力低于标准', '赵磊', '2025-05-14 09:00:00', 'J2气站', '设备故障', 'Medium', 'Closed', '王工', '2025-05-14 09:40:00', '调整气源'),
('包装机卡纸','KXE-434', 'K1包装机卡纸', '孙悦', '2025-01-06 15:20:00', 'K1包装区', '设备故障', 'Low', 'Closed', '李工', '2025-01-06 15:50:00', '清理卡纸'),
('电气柜报警','LXF-545', 'L2电气柜温度报警', '刘强', '2025-02-18 11:45:00', 'L2电气柜', '电气故障', 'High', 'Processing', '赵工', NULL, NULL),
('机器人掉线','MXA-656', 'M1机器人掉线', '王敏', '2025-03-29 10:10:00', 'M1机器人区', '系统故障', 'Critical', 'Open', NULL, NULL, NULL),
('气泵噪音大','NXB-767', 'N3气泵噪音异常', '张伟', '2025-04-13 08:55:00', 'N3气泵房', '设备故障', 'Medium', 'Closed', '孙工', '2025-04-13 09:30:00', '更换轴承'),
('原料标签错误','OXF-878', 'O1原料标签与实际不符', '李婷', '2025-05-17 13:25:00', 'O1仓', '物料异常', 'Low', 'Processing', '王工', NULL, NULL),
('主控模块失灵','PXA-222', 'P2主控模块无响应，导致生产暂停', '赵亮', '2025-01-15 10:30:00', 'P2主控区', '系统故障', 'High', 'Processing', '李工', NULL, NULL),
('冷却系统故障','QXB-333', 'Q1冷却系统无法正常降温', '王芳', '2025-02-20 13:45:00', 'Q1冷却区', '设备故障', 'Critical', 'Open', NULL, NULL, NULL),
('原料批次混乱','RXC-444', 'R3原料批次混乱，影响追溯', '陈刚', '2025-03-18 09:20:00', 'R3仓库', '物料异常', 'Medium', 'Closed', '赵工', '2025-03-18 10:00:00', '重新整理批次标签'),
('工艺参数异常','SXD-555', 'S2工艺参数设置异常，产品不良率升高', '刘洋', '2025-04-22 14:10:00', 'S2工艺区', '工艺问题', 'High', 'Processing', '孙工', NULL, NULL),
('包装箱破损','TXE-666', 'T1包装箱运输途中破损', '李娜', '2025-05-11 08:50:00', 'T1物流区', '运输问题', 'Low', 'Closed', '王工', '2025-05-11 09:30:00', '更换包装箱'),
('电源接触不良','UXF-777', 'U2电源接触不良导致设备重启', '张伟', '2025-01-21 11:15:00', 'U2配电区', '电气故障', 'Medium', 'Processing', '孙工', NULL, NULL),
('扫码枪掉线','VXA-888', 'V3扫码枪频繁掉线', '王敏', '2025-02-14 15:40:00', 'V3工位', '设备故障', 'Low', 'Closed', '赵工', '2025-02-14 16:00:00', '更换扫码枪'),
('主轴温度高','WXB-999', 'W1主轴温度高于警戒值', '李雷', '2025-03-27 08:25:00', 'W1主轴区', '设备故障', 'High', 'Processing', '王工', NULL, NULL),
('MES接口异常','XXC-111', 'X2 MES接口数据异常', '赵磊', '2025-04-19 17:20:00', 'X2信息中心', '系统故障', 'Critical', 'Open', NULL, NULL, NULL),
('气动阀卡死','YXD-222', 'Y3气动阀卡死无法动作', '刘敏', '2025-05-13 09:35:00', 'Y3气动区', '设备故障', 'Medium', 'Closed', '孙工', '2025-05-13 10:00:00', '更换气动阀'),
('原料未检','ZXE-333', 'Z1原料未按规定检验入库', '陈刚', '2025-01-30 16:40:00', 'Z1仓库', '物料异常', 'Low', 'Pending', NULL, NULL, NULL),
('电气柜短路','AXA-444', 'A3电气柜短路导致跳闸', '王伟', '2025-02-25 12:10:00', 'A3配电区', '电气故障', 'High', 'Processing', '赵工', NULL, NULL),
('气缸漏气','BXB-555', 'B2气缸漏气影响动作', '李娜', '2025-03-13 10:50:00', 'B2工位', '设备故障', 'Medium', 'Closed', '王工', '2025-03-13 11:30:00', '更换密封圈'),
('工人违规操作','CXC-666', 'C3工人未按流程操作', '张强', '2025-04-25 13:00:00', 'C3线', '人为操作', 'Low', 'Closed', '李工', '2025-04-25 13:30:00', '加强培训'),
('UPS报警','DXD-777', 'D1 UPS电池电量低报警', '王磊', '2025-05-08 07:20:00', 'D1配电房', '电气故障', 'High', 'Processing', '孙工', NULL, NULL),
('原料超量','EXE-888', 'E3原料超量入库', '赵敏', '2025-01-18 15:00:00', 'E3仓库', '物料异常', 'Medium', 'Pending', NULL, NULL, NULL),
('扫码异常','FXF-999', 'F1扫码枪无法识别二维码', '刘洋', '2025-02-23 14:30:00', 'F1工位', '设备故障', 'Low', 'Closed', '赵工', '2025-02-23 15:00:00', '更换扫码枪'),
('主轴卡死','GXA-111', 'G2主轴卡死无法转动', '李娜', '2025-03-21 09:45:00', 'G2主轴区', '设备故障', 'High', 'Processing', '王工', NULL, NULL),
('MES数据延迟','HXB-222', 'H1 MES数据上传延迟', '王刚', '2025-04-29 16:10:00', 'H1信息中心', '系统故障', 'Critical', 'Open', NULL, NULL, NULL),
('气源泄漏','IXC-333', 'I3气源管道泄漏', '陈静', '2025-05-16 08:15:00', 'I3气站', '设备故障', 'Medium', 'Closed', '孙工', '2025-05-16 09:00:00', '更换管道');

");
        return connection;
    }
}

